﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Domain.Repositories;

namespace PHMEE
{
    public interface IBaseRepository<TEntity, TKey> : IRepository<TEntity, TKey>
    where TEntity : class, IEntity<TKey>
    {
        Task<TEntity> PhmeeGetById(TKey id);
        Task<List<TEntity>> PhmeeGetAll();
        Task<TEntity> PhmeeCreate(TEntity entity, bool autoSave = false);
        Task PhmeeCreateMany(IEnumerable<TEntity> entities, bool autoSave = true);
        Task<TEntity> PhmeeUpdate(TEntity entity, bool autoSave = false);
        Task PhmeeDelete(TKey id, bool autoSave = false);
        Task<IQueryable<TEntity>> PhmeeGetQuery();

    }

}
